<?php

namespace App\Http\Controllers;

use App\User;
use Illuminate\Http\Request;

class UserController extends Controller
{

    //个人设置页面
    public function setting(){
        return view("user.setting");
    }
    //个人中心页面
    public function show(User $user){

        //这个人的信息 关注/文章 /粉丝数
        $user = User::withCount('stars','fans','posts')->find($user->id);
//        $user = User::withCount(['stars','fans','posts'])->find($user->id);

        //这个人的文章列表，取创建时间的前10条
        $posts = $user->posts()->orderBy('created_at','desc')->take(10)->get();
//        $posts1 = $user->posts1();
//        dump($posts1);
//        dd($posts1);
        //这个人关注的用户，包含关注用户的关注/文章 /粉丝数
        $stars = $user->stars;

        $susers = User::whereIn('id',$stars->pluck('star_id'))->withCount(['stars','fans','posts'])->get();
        //这个人的粉丝用户，包含关注用户的关注/文章 /粉丝数
        $fans = $user->fans;
        $fusers = User::whereIn('id',$fans->pluck('fan_id'))->withCount(['stars','fans','posts'])->get();
        return view('user/show',compact('user','posts','susers','fusers'));
    }

    //关注用户
    public function fan(User $user){
        $me = \Auth::user();
        $me->doFan($user->id);
        return [
            'error' => 0,
            'msg' => ''
        ];
    }
    //取消关注
    public function unfan(User $user){

        $me = \Auth::user();
//        $me->doUnfan($user->id);
        $me->doUnfan1($user->id);
        return [
            'error' => 0,
            'msg' => ''
        ];
    }
}
